perm filename AM.AJC[AM,DBL] blob sn#159764 filedate 1975-09-12 generic text, type C, neo UTF8
COMMENT ⊗   VALID 00002 PAGES
C REC  PAGE   DESCRIPTION
C00001 00001
C00002 00002	
C00014 ENDMK
C⊗;

AM is a study of how to automate the acquistion of domain knowledge for
one specific domain using some of the ideas being used in developing  
program understanding systems. The chosen domain is elementary
mathematics. "Acquiring knowledge" in this particular case
means that the system will automatically increase its repetoire of 
mathematical concepts, and further develop those concepts it already  
has. Intuitively, a concept can be thought of as an object (such as a
set or relation), an operation (such as union or inverse-of), or a
relationship (such as a theorem or the law of associativity). (???)

AM is based on a particular model of mathematical exploration.
In simplified terms, the model describes a four-step process:

(1) Observations are made about regualarities and other interesting
features in the "real world" or in already developed concepts;

(2) These regularities are formalized in terms of objects and operations
and possibly some statements to be included in the theory

(3) It is decided which concepts are to be taken as primitive in the
formalization; axiomitizations are proposed and theorems are derived

(4) New observations are made and additional concepts and theorems are
developed

It is important to note that each of the steps could easily involve
large seraches.  In order to control this, the model contains two
important notions, namely, ⊗2intuition⊗* and ⊗2interestingness⊗*, which
are discussed below.

The knowledge will be represented in a highly structured and procedural way.
By structured we mean that the mathematical knowledge is  grouped into a network
of mathematical sub-theories, each theory being built on certain
primitive concepts. Internally, a concept
consists of 25 facets, each facet, if present, being a fairly small program.
These small "facet" programs answer questions about the concept, or perform
actions in relation to the concept. 

The 25 kinds of facets are subdivided into four categories, namely:
recognition facets, which notice when a particular concept might be relevant;
self-altering facets, which deal with possible trasformations of the concept;
acting-on-other facets, which deal with effects of the concept on others, and
finally, informational facets, containing general facts about the concept.

As one example of a facet, the program in the "DEFINITION"
facet of some concept A, answers whether any given entity is an
instance of concept A. Thus the "DEFINITION" facet of the concept for 
"inverse-relation" tells whether something is an inverse relation, as
well as what it is an inverse relation of.
As a second example,
the "INTUITION" facet of a concept describes what "intuitions" AM should use
in understanding a concept.
An intuition is a model of some aspect of the "real" world. The system
queries these intuitions to find out what happens in certain situations.
It can use the results
of these queries to generate hypotheses. It can also use these intuitions
to look for simple counterexamples to hypotheses. The access to these
simulated real world situations is in fact an essential feature of AM;
a guiding and limiting force in its "research".

The system also has knowledge about the structure of its knowledge. Such
higher level knowledge we refer to as "strategic" knowledge. Strategic
knowledge exists for each separate kind of facet of a concept, and includes
information on how to analyze, manipulate, and, most importantly,
⊗2write⊗* the different types of facet programs. Strategic knowledge
is itself in the form of concepts. It is AM's uniform representation of
knowledge and, in particular, the strategic knowledge which give the
system a handle on the learning process. (clarify?)

The control structure of AM 
consists of repeatedly choosing the missing facet of some
concept; concepts need not have their facets filled in, and in fact, at any given
time most of the facets of most concepts will be blank. 
The facet selected is then filled in, according to the information in the
strategic concept for that facet.
During this process the facets of various concepts may
be altered, and new concepts may be brought into existence if sufficiently
interesting observations are made.

The problem of combinatoric explosion in the control mechanism is handled in
three ways. First, the system is influenced by its interactions with the user.
These interactions consist in 
describing to
the user what AM is currently doing, and in
soliciting advice and guidance from the user.
Second, the control is guided by the current computed
"interestingness" of the concepts under consideration. Interestingness is computed
on the basis of several parameters, such as simplicity, apparent utility,
apparent relevance, past experience, and so on.
Finally, the system  has access to the intuition mentioned earlier, which
provide a means of testing observations "empirically" and quickly.

As an example of its mode of operation, suppose that
AM were considering TIMES, the operation of multiplication
on the integers. One of the next things it could look at would be the inverse
operation, TIMES-. For reasons to be explained, AM could then notice that 
TIMES-(x) is a set (we point out to the reader that this set is just the set of
pairs of factors of x), that except for x=1, this set always has at least two 
elements, and then look at the case when there are exactly two factor pairs
(i.e., when x is prime). In this process AM would have discovered two new
concepts, that of "factors" and of "primes". AM is able to discover (create)
these theorems and concepts because it has knowledge to the effect that relations
give rise to the inverse relations, that it should look to see whether entities 
are sets, to discover simple theorems about the number of elements in sets, to look
at special "extremum" cases, etc.

The above example should give some flavor of how we  intend AM to work. 
This system is special in that is based on a model of
the process of mathematical
discovery, which even though it is quite simple, incorporates
the notions of (1) using simulations that function something like
intuitions, and (2) using "understanding" criteria of for gauging the
relative interest of the tasks under consideration. In this sense,
AM approaches what we see as the actual process of mathematical discovery
in a way that theorem provers
or proof checkers simply do not. 

At present, the control structure has been developed and written.
The facets that the concepts will contain have been defined.
In addition, much of the knowledge that AM will initially have
has been collated and organized in the form of concepts with facets
filled in. (one more sentence.)